package cn.lbl.face.leetCode;

/*
给定数组 nums = [1,1,2],

函数应该返回新的长度 2, 并且原数组 nums 的前两个元素被修改为 1, 2。

你不需要考虑数组中超出新长度后面的元素。

 */
public class 删除排序数组中的重复项2 {
    public static void main(String[] args) {
//        System.out.println( removeDuplicates(new int[]{1,1,2}));
        System.out.println( removeDuplicates(new int[]{0,0,1,1,1,2,2,3,3,4}));
//        System.out.println( removeDuplicates(new int[]{0,0,1,1,1,2,2,3,3,4}));
    }

    //双指针法
    //快慢指针 i(慢)  j（快）
    public static int removeDuplicates(int[] nums) {
        int i=0;
        for (int j = 1; j <nums.length ; j++) {
            if (nums[i] != nums[j]) {
                i++;
                nums[i]=nums[j];
            }
        }
        return i+1;
    }
}
